#ifndef __ps2scanchar_h__
#define __ps2scanchar_h__

#define SCANCHAR_OFFSET 0x15

// actual char indicted by scancode
char scanchar [0x49] = {
	'q', // 15
	'1', // 16
	' ', // 17
	' ', // 18
	' ', // 19
	'z', // 1A
	's', // 1B
	'a', // 1C
	'w', // 1D
	'2', // 1E
	' ', // 1F
	' ', // 20
	'c', // 21
	'x', // 22
	'd', // 23
	'e', // 24
	'4', // 25
	'3', // 26
	' ', // 27
	' ', // 28
	' ', // 29
	'v', // 2A
	'f', // 2B
	't', // 2C
	'r', // 2D
	'5', // 2E
	' ', // 2F
	' ', // 30
	'n', // 31
	'b', // 32
	'h', // 33
	'g', // 34
	'y', // 35
	'6', // 36
	' ', // 37
	' ', // 38
	' ', // 39
	'm', // 3A
	'j', // 3B
	'u', // 3C
	'7', // 3D
	'8', // 3E
	' ', // 3F
	' ', // 40
	',', // 41
	'k', // 42
	'i', // 43
	'o', // 44
	'0', // 45
	'9', // 46
	' ', // 47
	' ', // 48
	'.', // 49
	'/', // 4A
	'l', // 4B
	';', // 4C
	'p', // 4D
	'-', // 4E
	' ', // 4F
	' ', // 50
	' ', // 51
	'\'',// 52
	' ', // 53
	'[', // 54
	'=', // 55
	' ', // 56
	' ', // 57
	' ', // 58
	' ', // 59
	' ', // 5A
	']', // 5B
	' ', // 5C
	'\\',// 5D
};

// if shift is held...
// since the characters are lower and the symbols are upper,
char sscanchar [0x49] = {
	'Q', // 15
	'!', // 16
	' ', // 17
	' ', // 18
	' ', // 19
	'Z', // 1A
	'S', // 1B
	'A', // 1C
	'W', // 1D
	'@', // 1E
	' ', // 1F
	' ', // 20
	'C', // 21
	'X', // 22
	'D', // 23
	'E', // 24
	'$', // 25
	'#', // 26
	' ', // 27
	' ', // 28
	' ', // 29
	'V', // 2A
	'F', // 2B
	'T', // 2C
	'R', // 2D
	'%', // 2E
	' ', // 2F
	' ', // 30
	'N', // 31
	'B', // 32
	'H', // 33
	'G', // 34
	'Y', // 35
	'^', // 36
	' ', // 37
	' ', // 38
	' ', // 39
	'M', // 3A
	'J', // 3B
	'U', // 3C
	'&', // 3D
	'*', // 3E
	' ', // 3F
	' ', // 40
	'<', // 41
	'K', // 42
	'I', // 43
	'O', // 44
	')', // 45
	'(', // 46
	' ', // 47
	' ', // 48
	'>', // 49
	'?', // 4A
	'L', // 4B
	':', // 4C
	'P', // 4D
	'_', // 4E
	' ', // 4F
	' ', // 50
	' ', // 51
	'"', // 52
	' ', // 53
	'{', // 54
	'+', // 55
	' ', // 56
	' ', // 57
	' ', // 58
	' ', // 59
	' ', // 5A
	'}', // 5B
	' ', // 5C
	'|', // 5D
};

#define KEYPAD_OFFSET 0x69

char keypad [21] = {
	'1', // 69
	' ', // 6A
	'4', // 6B
	'7', // 6C
	' ', // 6D
	' ', // 6E
	' ', // 6F
	'0', // 70
	'.', // 71
	'2', // 72
	'5', // 73
	'6', // 74
	'8', // 75
	' ', // 76
	' ', // 77
	' ', // 78
	'+', // 79
	'3', // 7A
	'-', // 7B
	'*', // 7C
	'9', // 7D
};

#endif
